// subpackagesA/pages/addLedger/addLedger.ts
import * as natApi from '../../../api/Ledger'
Page({

  /**
   * 页面的初始数据
   */
  data: {
    HeatExchangeStation: [
      {
        title: '供热公司',
        value: 'comName',
        placeholder: '请选择供热公司',
        readonly: true,
        type: 'select'
      },
      // {
      //   title: '热源出口',
      //   value: 'heatExchangestationName',
      //   placeholder: '请选择热源出口',
      //   type: 'select'
      // },
      {
        title: '总面积(m²)',
        value: 'heatExchangeStationArea',
        placeholder: '请输入总面积(m²)',
        type: 'input'
      },
      {
        title: '居建面积(m²)',
        value: 'privateHeatArea',
        placeholder: '请输入居建面积(m²)',
        type: 'input'
      },
      {
        title: '公建面积(m²)',
        value: 'publicHeatArea',
        placeholder: '请输入公建面积(m²)',
        type: 'input'
      },
      {
        title: '其他面积(m²)',
        value: 'otherHeatArea',
        placeholder: '请输入其他面积(m²)',
        type: 'input'
      },
      {
        title: '额定面积(m²)',
        value: 'heatingAreaMax',
        placeholder: '请输入额定面积(m²)',
        type: 'input'
      },
      {
        title: '经度',
        value: 'longitude',
        placeholder: '请抓取经度',
        readonly: true,
        isButton: true,
        type: 'input'
      },
      {
        title: '纬度',
        value: 'latitude',
        placeholder: '请抓取纬度',
        readonly: true,
        type: 'input'
      },
      {
        title: '供水温度(°C)',
        value: 'designSupplyTemp',
        placeholder: '请输入供水温度(°C)',
        type: 'input'
      },
      {
        title: '回水温度(°C)',
        value: 'designReturnTemp',
        placeholder: '请输入回水温度(°C)',
        type: 'input'
      },
      {
        title: '设计负荷(MW)',
        value: 'designLoad',
        placeholder: '请输入设计负荷(MW)',
        type: 'input'
      },
      {
        title: '换热能力(MW)',
        value: 'heatExchangeStationPower',
        placeholder: '请输入换热能力(MW)',
        type: 'input'
      },
      {
        title: '单位能耗(w/m²)',
        value: 'unitAreaEnergy',
        placeholder: '请输入单位能耗(w/m²)',
        type: 'input'
      },
      {
        title: '设计流量(m³/h)',
        value: 'designFlow',
        placeholder: '请输入设计流量(m³/h)',
        readonly: true,
        isButton: true,
        type: 'input'
      },
      {
        title: '设计室温(°C)',
        value: 'designRequirIndoorTemp',
        placeholder: '请输入设计室温(°C)',
        type: 'input'
      },
      {
        title: '流量调节',
        value: 'flowAdjustIsUse',
        type: 'radio'
      },
      {
        title: '最低流量比',
        value: 'flowPercentMin',
        placeholder: '请输入最低流量比',
        type: 'input'
      },
      {
        title: '最高流量比',
        value: 'flowPercentMax',
        placeholder: '请输入最高流量比',
        type: 'input'
      },
      {
        title: '交费率',
        value: 'payRateIsUse',
        type: 'radio'
      },
      {
        title: '交费率获取方式',
        value: 'payRateAccessMethod',
        placeholder: '请选择交费率获取方式',
        type: 'radio'
      },
      {
        title: '交费率',
        value: 'payRate',
        placeholder: '请输入(0~1)',
        type: 'input'
      },
      {
        title: '供暖模式',
        value: 'heatingMode',
        placeholder: '请选择供暖模式',
        readonly: true,
        type: 'select'
      },
      {
        title: '热用户',
        value: 'houseHoldcount',
        placeholder: '请输入热用户',
        type: 'input'
      },
      {
        title: '地址',
        value: 'heatExchangeStationAddr',
        placeholder: '请输入地址',
        type: 'input'
      },
      {
        title: '入网年度',
        value: 'internetYear',
        placeholder: '请输入入网年度',
        type: 'input'
      },
      {
        title: '建设年度',
        value: 'buildYear',
        placeholder: '请输入建设年度',
        type: 'input'
      },
      {
        title: '平台年度',
        value: 'platformYear',
        placeholder: '请输入平台年度',
        type: 'input'
      },
      {
        title: '供电模式',
        value: 'electricMode',
        placeholder: '请输入供电模式',
        type: 'input'
      },
      {
        title: '建设情况',
        value: 'isCompleted',
        placeholder: '请输入建设情况',
        type: 'radio'
      },
      {
        title: '备注',
        value: 'describe',
        placeholder: '请输入备注',
        type: 'textarea'
      },
    ],
    Unit: [
      {
        title: '所属上级',
        value: 'heatExchangeStationName',
        placeholder: '请选择所属上级',
        readonly: true,
        type: 'select'
      },
      {
        title: '机组名称',
        value: 'assemblingUnitName',
        placeholder: '请输入机组名称',
        type: 'input'
      },
      {
        title: '机组编号',
        value: 'assemblingUnitNumber',
        placeholder: '请输入机组编号',
        type: 'input'
      },
      {
        title: '机组功率(MW)',
        value: 'assemblingUnitPower',
        placeholder: '请输入机组功率(MW)',
        type: 'input'
      },
      {
        title: '供热面积(m²)',
        value: 'actualHeatArea',
        placeholder: '请输入实际供热面积(m²)',
        type: 'input'
      },
      {
        title: '供暖模式',
        value: 'heatingMode',
        placeholder: '请选择供暖模式',
        type: 'select'
      },
      {
        title: '是否使用',
        value: 'isUse',
        placeholder: '请输入额定面积(m²)',
        type: 'radio'
      },
      {
        title: '公建/民建',
        value: 'usedFor',
        placeholder: '请选择',
        type: 'radio'
      },
      {
        title: '供水温度(°C)',
        value: 'designSupplyTemp',
        placeholder: '请输入供水温度(°C)',
        type: 'input'
      },
      {
        title: '回水温度(°C)',
        value: 'designReturnTemp',
        placeholder: '请输入回水温度(°C)',
        type: 'input'
      },
      {
        title: '设计负荷(MW)',
        value: 'designLoad',
        placeholder: '请输入设计负荷(MW)',
        type: 'input'
      },
      {
        title: '单位能耗(w/m²)',
        value: 'unitAreaEnergy',
        placeholder: '请输入单位能耗(w/m²)',
        type: 'input'
      },
      {
        title: '设计流量(m³/h)',
        value: 'designFlow',
        placeholder: '请输入设计流量(m³/h)',
        readonly: true,
        type: 'input'
      },
      {
        title: '设计室温(°C)',
        value: 'designRequirIndoorTemp',
        placeholder: '请输入设计室温(°C)',
        type: 'input'
      },
      {
        title: '流量调节',
        value: 'flowAdjustIsUse',
        type: 'radio'
      },
      {
        title: '最低流量比',
        value: 'flowPercentMin',
        placeholder: '请输入最低流量比',
        type: 'input'
      },
      {
        title: '最高流量比',
        value: 'flowPercentMax',
        placeholder: '请输入最高流量比',
        type: 'input'
      },
      {
        title: '交费率',
        value: 'payRateIsUse',
        type: 'radio'
      },
      {
        title: '交费率获取方式',
        value: 'payRateAccessMethod',
        placeholder: '请选择交费率获取方式',
        type: 'radio'
      },
      {
        title: '交费率',
        value: 'payRate',
        placeholder: '请输入(0~1)',
        type: 'input'
      },
      {
        title: '生产厂家',
        value: 'assemblingUnitManufaturer',
        placeholder: '请输入生产厂家',
        type: 'input'
      },
      {
        title: '是否采集一次侧',
        value: 'isPrimaryData',
        placeholder: '请选择',
        type: 'radio'
      },
      {
        title: '供热最低楼层',
        value: 'lowFloor',
        placeholder: '请输入供热最低楼层',
        type: 'input'
      },
      {
        title: '供热最高楼层',
        value: 'maxFloor',
        placeholder: '请输入供热最高楼层',
        type: 'input'
      },
      {
        title: '生产日期',
        value: 'assemblingUnitMday',
        placeholder: '请输入生产日期',
        type: 'input'
      },
      {
        title: '安装日期',
        value: 'assemblingUnitCommissioningDate',
        placeholder: '请输入安装日期',
        type: 'input'
      },
      {
        title: '备注',
        value: 'describe',
        placeholder: '请输入备注',
        type: 'textarea'
      },
    ],
    columns: ['散热器', '地暖', '普暖', '混合', '空调'],
    info: {},
    type: '',
    show: false
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(option: any) {
    const info = wx.getStorageSync('info')
    this.setData({
      info: info,
      type: option.type
    })
    console.log(option, this.data.info, info['comName'])
  },
  onClickLeft() {
    wx.navigateBack({
      delta: 1,
    });
  },
  // 处理输入框内容变化的函数
  onChange(event: any) {
    const { detail, target } = event; // 获取输入的内容和目标信息
    const field = target.dataset.field;  // 获取 data-field 中的字段名称

    // 使用动态键名更新 info 对象中指定字段的值
    this.setData({
      [`info.${field}`]: detail
    });
  },
  onSubmit() {
    console.log(this.data.info)
    const { type, info } = this.data
    Object.keys(info).forEach((key) => {
      if (info[key] === null) {
        info[key] = "";
      }
    });
    if (type == 1) {
      // natApi.editHrz(info).then((res:any)=>{
      //   console.log(res)
      // })
      wx.request({
        url: 'https://www.hbdinkon.cn:10020/MobileLinkCenter/cityHrz/updateHRZ',
        method: 'POST',
        data: info,
        header: {
          "Content-Type": "application/json"
        },
        success: (res: any) => {
          if (res.data == 1) {
            wx.showToast({
              title: '修改成功',
              icon: 'success',
              success: () => {
                wx.navigateBack({
                  delta: 2
                })
              }
            })
          } else {
            wx.showToast({
              title: '修改失败',
              icon: 'error'
            })
          }
        },
      })
    } else {
      wx.request({
        url: 'https://www.hbdinkon.cn:10020/MobileLinkCenter/cityHrz/updateJIZU',
        method: 'POST',
        data: info,
        header: {
          "Content-Type": "application/json"
        },
        success: (res: any) => {
          if (res.data == 1) {
            wx.showToast({
              title: '修改成功',
              icon: 'success',
              success: () => {
                wx.navigateBack({
                  delta: 2
                })
              }
            })
          } else {
            wx.showToast({
              title: '修改失败',
              icon: 'error'
            })
          }
        },
      })
    }
  },
  // 选择位置
  chooseLocation() {
    wx.navigateTo({
      url:'/subpackagesA/pages/map/map'
    })
    // wx.chooseLocation({
    //   success: (res) => {
    //     console.log('选择的位置信息：', res);

    //     // 设置位置信息到 data 中
    //     this.setData({
    //       [`info.longitude`]: res.longitude,
    //       [`info.latitude`]: res.latitude
    //     });
    //   },
    //   fail: (err) => {
    //     console.error('选择位置失败', err);
    //   }
    // });
  },
  onRadio(e: any) {
    const { detail, target } = e; // 获取输入的内容和目标信息
    const field = target.dataset.field;  // 获取 data-field 中的字段名称
    // 使用动态键名更新 info 对象中指定字段的值
    this.setData({
      [`info.${field}`]: detail
    });
  },
  onInput(e: any) {
    const { detail, target } = e; // 获取输入的内容和目标信息
    const field = target.dataset.field;  // 获取 data-field 中的字段名称
    if (field == 'heatingMode') {
      this.setData({
        show: true
      })
    }
  },
  onClose() {
    this.setData({
      show: false
    })
  },
  onConfirm(e: any) {
    this.setData({
      ['info.heatingMode']: e.detail.value,
      show: false
    })
  },
  onGetFlow() {
    const info = this.data.info;
    if (info.designSupplyTemp && info.designReturnTemp && info.designLoad) {
      let sum = (info.designLoad * 1000) / (info.designSupplyTemp - info.designReturnTemp) / 4.2 * 3.6 * 1.1;
      sum = Math.floor(sum * 1000) / 1000
      this.setData({
        ['info.designFlow']: sum
      })
      console.log(info)
    } else {
      wx.showToast({
        title: '缺少参数',
        icon: 'error'
      })
    }

  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})